// 7-14 字符串排序 (20分)
// 本题要求编写程序，读入5个字符串，按由小到大的顺序输出。

// 输入格式：
// 输入为由空格分隔的5个非空字符串，每个字符串不包括空格、制表符、换行符等空白字符，长度小于80。

// 输出格式：
// 按照以下格式输出排序后的结果：

// After sorted:
// 每行一个字符串

#include <stdio.h>
#include <string.h>
#define NUM 5
#define LEN 80

char * swapStr(char *st1, char *st2);
int main()
{
    char word[NUM][LEN];
    int idx = 0, min;
    for (int i = 0; i < NUM; i++)
    {
        scanf("%80s", word[i]);
    }
    // 选择排序
    for (int i = 0; i < NUM - 1; i++)
    {
        min = i;
        for (int j = i + 1; j < NUM; j++)
        {
            if (strcmp(word[min], word[j]) > 0)
            {
                min = j;
            }
        }
        if (min != i)
        {
            swapStr(word[min], word[i]);
        }
    }
    printf("After sorted:\n");
    for (int i = 0; i < NUM; i++)
    {
        printf("%s\n", word[i]);
    }

    return 0;
}

char * swapStr(char *st1, char *st2)
{
    char temp[LEN];
    strcpy(temp, st1);
    strcpy(st1, st2);
    strcpy(st2, temp);
    return st2;
}
// 输入样例：
// red yellow blue green white
// 输出样例：
// After sorted:
// blue
// green
// red
// white
// yellow